Notes
Slide Show
Outline
1
Model Development Tools (MDT) 1.0
Europa Simultaneous Release Review
  • 6 June, 2007



  • Release Review revision 2.3.1 – 17 January, 2007
2
Agenda
  • Talking Points
  • Features
  • Non-Code Aspects
  • APIs
  • Architectural Issues
  • Tool Usability
  • End-of-Life
  • Bugzilla
  • Standards
  • UI Usability
  • Schedule
  • Communities
  • IP Issues
  • Project Plan
3
Talking Points
  • MDT 1.0 Themes
    • Appeal to a Broader Community
    • Be a Better Platform
    • Make Simpler to Use
    • Restructure Modeling Components
    • Increase Modeling Component Cohesion
    • Enable Consistent Multi-Language Support

  • The project lead certifies that the requirements for Eclipse Quality APIs have been met for this release


  • End-of-life issues
    • RDF/OWL editors no longer available in EODM 0.9
    • org.eclipse.emf.ocl plug-in (OCL 1.0 API) deprecated, but continuing viability guaranteed
    • http://www.eclipse.org/uml2/2.0.0/UML namespace URI now obsolete, superseded by http://www.eclipse.org/uml2/2.1.0/UML

  • All significant contributions, non-Committer code contributions, and third-party libraries have received IP clearance
    • 1080: original 3rd-party code contribution
    • 1081: use by MDT project

  • 15 committers from two companies (Borland, IBM) in three countries (Canada, China, Czech Republic)
4
Features
  • 1.0 development plan available at http://www.eclipse.org/modeling/mdt/docs/plans/mdt_project_plan_1_0.html


  • 24 committed, 7 deferred


  • New & Noteworthy documentation at http://wiki.eclipse.org/index.php/MDT_1.0_New_and_Noteworthy


  • Release notes available at http://www.eclipse.org/modeling/mdt/news/relnotes.php?project=
5
Features – EODM 0.9
  • 5 committed, 0 deferred


  • Appeal to a Broader Community
    • Standard Compliance. Implement the new package structure and ontology metamodel of RDF and OWL conforming to the ODM specification.
    • Dynamic Typing. Allow objects representing RDF/OWL resources to change type.
    • RDF/OWL Parsing and Serialization. Provide support for parsing and serialization in RDF/XML format.
    • RDF/OWL Reasoning. Provide support for RDF/OWL reasoning.

  • Increase Modeling Component Cohesion
    • RDF/OWL Transformation to/from Ecore. Provide a mechanism to transform RDF/OWL models to/from Ecore.
6
Features – OCL 1.1
  • 7 committed, 2 deferred


  • Appeal to a Broader Community
    • Stand-alone Support. Provide a stand-alone (Eclipse-free) OCL build.

  • Be a Better Platform
    • Parsing API. Provide a public API for parsing OCL documents, with the complete context declaration syntax.
    • EMF 2.3 / J2SE 5 Support. Adopt EMF 2.3, including regeneration of the OCL metamodel.

  • Make Simpler to Use
    • Improved Documentation. Develop a complete Programmer’s Guide for the OCL component.
7
Features – OCL 1.1
  • Restructure Modeling Components
    • LPG. Consume LPG runtime library from the Orbit project.

  • Increase Modeling Component Cohesion
    • Integration with UML. Provide support for parsing and evaluating OCL constraints and expressions on the UML metamodel.

  • Enable Consistent Multi-language Support
    • ICU4J. Isolate and minimize dependency on ICU4J; ensure support for the “thin” variant of ICU4J.
8
Features – UML2 2.1
  • 7 committed, 3 deferred


  • Appeal to a Broader Community
    • Static Profile Definition. Provide a way to specify that a profile definition be generated using EMF; this would allow, among other things, support for custom data types and derived stereotype properties.

  • Be a Better Platform
    • Ant Task for Ecore Importer. Provide an Ant task for the UML Ecore importer, similar to those provided for the Rose and Ecore importers in EMF.

  • Make Simpler to Use
    • Create Child/Sibling Menu Reorganization. Reorganize the ‘Create Child’ and ‘Create Sibling’ menus of the UML editor so that the items are grouped by feature.
    • Improved Documentation. Improve documentation by updating the FAQ, enhancing the Javadoc, and publishing new articles.
9
Features – UML2 2.1
  • Increase Modeling Component Cohesion
    • Eclipse 3.3 / EMF 2.3 Compatibility. Maintain release currency concurrent with EMF 2.3 (and Eclipse 3.3); make changes as required to align with EMF features and bug fixes, in particular support for Java SE 5.0.
    • XML Primitive Types. Provide a model library to represent the types defined in the XMLType metamodel in EMF; be sure to update Ecore/UML converters to make use of this new library.
    • Integration with OCL. Integrate support for parsing and evaluating OCL constraints and expressions.
10
Features – UML2 Tools 0.7
  • 4 committed, 1 deferred


  • Appeal to a Broader Community
    • Class Diagrams. Provide a GMF-based editor for UML class diagrams.
    • State Machine Diagrams. Provide a GMF-based editor for UML state machine diagrams.
    • Component Diagrams. Provide a GMF-based editor for UML component diagrams.
    • Activity Diagrams. Provide a GMF-based editor for UML activity diagrams.

  • Other
    • Profile Definition Diagrams. Provide a GMF-based editor for UML profile diagrams.
11
Features – XSD 2.3
  • 1 committed, 1 deferred


  • Appeal to a Broader Community
    • Java™ SE 5.0 Support. Exploit new Java language constructs; use generics (e.g. EList, EMap and implementations); generate and merge Java 5 constructs; investigate enumerations and annotations.
12
Non-Code Aspects
  • All components hosted at single Web site, Wiki


  • XSD still needs to be migrated to MDT CVS module


  • Documentation (FAQ, Javadoc, articles, etc.) available for EODM, OCL, UML2, XSD (UML2 Tools TBD); updates complete or underway


  • Example features/plug-ins available for all components
13
APIs
  • The project lead certifies that the requirements for Eclipse Quality APIs have been met for this release


  • Non-API in “internal” namespace


  • Some ‘discouraged access’ warnings in cases of metamodel extension (plug-in compatibility restricted to minor version)


  • OCL, UML2, XSD APIs updated to support Java 5.0


  • EODM APIs are “provisional”, incompatible with previous release due to compliance with new draft of the ODM specification


  • New convenience APIs introduced in UML2


  • GMF Runtime represents bulk of API for UML2 Tools
14
Architectural Issues
  • To support RDF graphs and dynamic typing, EODM implementation changed to make use of internal core objects and Java proxies – hence code generation not used/possible


  • OCL now consuming LPG Java Runtime from Orbit


  • UML2 schema changes introduced to address bidirectional association issues [185602]


  • GMF resources available for UML2 Tools to support code regeneration; 80 % generated code (including custom templates), 15 % pluggable custom code, 5 % @generated NOT code


  • XSD partitioned into finer-grained features


  • No generics support for XSD transformation to/from Ecore
15
Tool Usability
  • Major OCL usability issue, lack of documentation, addressed with introduction of Programmer’s Guide


  • UML editor (create child/sibling menus), exporter usability improved


  • GMF-based editors introduced for activity, class, profile definition, and state machine diagrams



16
End-of-Life
  • RDF/OWL editors no longer available in EODM 0.9


  • org.eclipse.emf.ocl plug-in (OCL 1.0 API) deprecated, but continuing viability guaranteed


  • http://www.eclipse.org/uml2/2.0.0/UML namespace URI now obsolete, superseded by http://www.eclipse.org/uml2/2.1.0/UML
17
Bugzilla (as of May 30, 2007)
18
Bugzilla – EODM (as of May 30, 2007)
19
Bugzilla – OCL (as of May 30, 2007)
20
Bugzilla – UML2 (as of May 30, 2007)
21
Bugzilla – UML2 Tools (as of May 30, 2007)
22
Bugzilla – XSD (as of May 30, 2007)
23
Standards
  • Ontology Definition Metamodel (ODM) 1.0 specification finalization underway; EODM 0.9 compliant with working draft


  • Object Constraint Language (OCL) 2.1 revision underway; OCL 1.1 compliant with 2.0 formal version


  • Unified Modeling Language (UML) 2.2 specification revision underway; UML2 2.1 and UML2 Tools 0.7 compliant with 2.1.1 formal version


  • XSD compliant with XML Schema W3C standard


24
UI Usability
  • MDT 1.0 conforms to Eclipse User Interface Guidelines


  • Eclipse platform standard i18n support used where applicable/possible; stand-alone deployment uses equivalent J2SE APIs


  • ICU4J is used but optional; stand-alone deployments delegate to corresponding J2SE 5.0 APIs when ICU not available


  • As with all Europa projects, language packs will be created as part of an Eclipse Globalization Project


  • Eclipse platform APIs used to provide accessible UI
25
Schedule
  • As a whole, MDT is a “+2” project, but should probably be “+3” or “+4” based on its dependencies


  • M3 met on November 16


  • M4 slipped from January 4 to January 22


  • M5 met on February 23


  • M6 slipped from April 6 to April 10


  • M7 slipped from May 18 to May 24
26
Communities
  • Increased interaction in Bugzilla and on newsgroups


  • MDT represented at EclipseCon 2007 (short/long talks, tutorials)


  • Coordination with Topcased open source project


  • Continued efforts to expand user communities for EODM, UML2 Tools


  • MDT is among the most active projects at Eclipse


27
IP Issues
  • The MDT project leadership verifies that:
    • the about files and use licenses are in place as per the Guidelines to Legal Documentation.
    • all contributions (code, documentation, images, etc) have been committed by individuals who are either Members of the Foundation, or have signed the appropriate Committer Agreement. In either case, these are individuals who have signed, and are abiding by, the Eclipse IP Policy.
    • all significant contributions have been reviewed by the Foundation's legal staff.
    • all non-Committer code contributions, including third-party libraries, have been documented in the release and reviewed by the Foundation's legal staff.
    • all Contribution Questionnaires have been completed.
    • the "provider" field of each plug-in is set to "Eclipse.org“.
    • the "copyright" field of each feature is set to the copyright owner (the Eclipse Foundation is rarely the copyright owner).
    • any third-party logos or trademarks included in the distribution (icons, help file logos, etc) have been licensed under the EPL.
    • any fonts or similar third-party images included in the distribution (e.g. in PDF or EPS files) have been licensed under the EPL.

  • The MDT project IP log is located at http://www.eclipse.org/modeling/mdt/eclipse-project-ip-log.csv
28
Project Plan
  • Draft development plan for MDT 1.1 not yet available
29
Legal Notices
  • UML is a trademark of the Object Management Group


  • XML is a trademark of the World Wide Web Consortium


  • Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both


  • Other company, product, or service names may be trademarks or service marks of others